1. Field of the Invention
The present invention is directed to computer systems; and more particularly, it is directed to a color conversion process for digital images using computer systems.
2. Description of the Related Art
Digital image editing is the process of creating and/or modifying digital images using a computer system. Using specialized software programs, users may manipulate and transform images in a variety of ways. These digital image editors may include programs of differing complexity such as limited-purpose programs associated with acquisition devices (e.g., digital cameras and scanners with bundled or built-in programs for managing brightness and contrast); limited editors suitable for relatively simple operations such as rotating and cropping images; and professional-grade programs with large and complex feature sets.
Digital images may include raster graphics, vector graphics, or a combination thereof. Raster graphics data (also referred to herein as bitmaps) may be stored and manipulated as a grid of individual picture elements called pixels. A bitmap may be characterized by its width and height in pixels and also by the number of bits per pixel. Commonly, a color bitmap defined in the RGB (red, green, blue) color space may comprise between one and eight bits per pixel for each of the red, green, and blue channels. An alpha channel may be used to store additional data such as per-pixel transparency values.
Vector graphics data may be stored and manipulated as one or more geometric objects built with geometric primitives. The geometric primitives (e.g., points, lines, polygons, Bézier curves, and text characters) may be based upon mathematical equations to represent parts of digital images. The geometric objects may typically be located in two-dimensional or three-dimensional space. Suitable image editors, such as Adobe Illustrator® (available from Adobe Systems Incorporated), may be used to perform operations on these objects. Typical operations include rotation, translation, stretching, skewing, changing depth order, and combining objects with other objects. While raster graphics may often lose apparent quality when scaled to a higher resolution, vector graphics may scale to the resolution of the device on which they are ultimately rendered. To render vector graphics on raster-based imaging devices (e.g., most display devices and printers), the geometric objects are typically converted to raster graphics data in a process called rasterization. Prior to final rasterization, surfaces defined by the geometric objects may be covered with non-overlapping polygons (e.g., triangles or quadrilaterals) in a process called tessellation.
Various devices used in capturing and rendering digital images may use different color models and corresponding color spaces. For example, digital display devices typically use the RGB color model, and color printers often use the CMYK color model. Both the RGB and CMYK (cyan, magenta, yellow, and key [black]) models are dependent color spaces, and both may require an absolute or independent color space (e.g., a large Lab color space approximating human vision) to provide meaning to the underlying color data. Thus, an International Color Consortium (ICC) profile may be provided along with the actual color data in the digital image. For a digital photograph, for example, the ICC color profile may be provided by the capture device (e.g., a particular model of digital SLR camera). The color profile associated with a device may attempt to represent all the possible colors for a particular device. Devices used for the capture, editing, and reproduction of digital images may have corresponding color profiles.
For accurate reproduction, it is desirable that the color profiles of the capturing device and the reproduction device match as closely as possible. However, certain color spaces have a larger gamut than others. For example, a typical high-end color space used for image capture and editing, such as ProPhoto or AdobeRGB, is much larger than that of a typical printer. Accurate printing of a digital photograph may involve converting the photograph from the source color space (e.g., AdobeRGB) to the printer's destination color space. Improper color conversion may result in inaccurate or unsatisfactory reproduction of a digital image.
A particular technique for color conversion may be referred to as a rendering intent. A particular rendering intent may be designed to maintain particular characteristics of the color data in the image. Standard rendering intents include “Relative Colorimetric,” “Absolute Colorimetric,” “Saturation,” and “Perceptual.” However, each rendering intent may have a limitation. Thus, some image characteristics (e.g., color saturation, contrast, texture, or vibrancy) may be lost while other characteristics are preserved during a color conversion process using a particular rendering intent. When determining which rendering intent to use, photographers and editors typically judge the differences perceptually.